An input/output (I/O) device may support the Downloadable Firmware Update (DFU) I/O device Class or a vendor defined mechanism, which defines a protocol for sending new firmware updates to the device. In embodiments, the DFU generically refers to a mechanism that allows the firmware of an I/O device to be updated, irrespective of whether the USB DFU Device Class, a vendor defined, or other method is used. Vendors may take advantage of the DFU Device Class or a vendor-defined mechanism to update the I/O device when firmware bugs are found, class-specific protocols are changed, and features are added, among other firmware updates. In some cases, a I/O device may be reprogrammed during a firmware update to harm a system. For example, the firmware update can alter descriptors of the I/O device to cause the I/O device to appear as the original device plus a new device.
The same numbers are used throughout the disclosure and the figures to reference like components and features. Numbers in the 100 series refer to features originally found in FIG. 1; numbers in the 200 series refer to features originally found in FIG. 2; and so on.